/**
 * <copyright>
 * </copyright>
 *
 * $Id$
 */
package org.hl7.v3;

import java.util.Arrays;
import java.util.Collections;
import java.util.List;

import org.eclipse.emf.common.util.Enumerator;

/**
 * <!-- begin-user-doc -->
 * A representation of the literals of the enumeration '<em><b>Respiratory And Or Rehabilitative And Or Restorative Provider HIPAA Member5</b></em>',
 * and utility methods for working with them.
 * <!-- end-user-doc -->
 * @see org.hl7.v3.V3Package#getRespiratoryAndOrRehabilitativeAndOrRestorativeProviderHIPAAMember5()
 * @model extendedMetaData="name='RespiratoryAndOrRehabilitativeAndOrRestorativeProviderHIPAA_._member_._5'"
 * @generated
 */
public enum RespiratoryAndOrRehabilitativeAndOrRestorativeProviderHIPAAMember5 implements Enumerator {
	/**
	 * The '<em><b>221700000N</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_221700000N_VALUE
	 * @generated
	 * @ordered
	 */
	_221700000N(0, "_221700000N", "221700000N"),

	/**
	 * The '<em><b>225600000N</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_225600000N_VALUE
	 * @generated
	 * @ordered
	 */
	_225600000N(1, "_225600000N", "225600000N"),

	/**
	 * The '<em><b>226300000N</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_226300000N_VALUE
	 * @generated
	 * @ordered
	 */
	_226300000N(2, "_226300000N", "226300000N"),

	/**
	 * The '<em><b>225700000N</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_225700000N_VALUE
	 * @generated
	 * @ordered
	 */
	_225700000N(3, "_225700000N", "225700000N"),

	/**
	 * The '<em><b>225A00000N</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_225A00000N_VALUE
	 * @generated
	 * @ordered
	 */
	_225A00000N(4, "_225A00000N", "225A00000N"),

	/**
	 * The '<em><b>224Z00000N</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_224Z00000N_VALUE
	 * @generated
	 * @ordered
	 */
	_224Z00000N(5, "_224Z00000N", "224Z00000N"),

	/**
	 * The '<em><b>225000000N</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_225000000N_VALUE
	 * @generated
	 * @ordered
	 */
	_225000000N(6, "_225000000N", "225000000N"),

	/**
	 * The '<em><b>222Z00000N</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_222Z00000N_VALUE
	 * @generated
	 * @ordered
	 */
	_222Z00000N(7, "_222Z00000N", "222Z00000N"),

	/**
	 * The '<em><b>225200000N</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_225200000N_VALUE
	 * @generated
	 * @ordered
	 */
	_225200000N(8, "_225200000N", "225200000N"),

	/**
	 * The '<em><b>224P00000N</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_224P00000N_VALUE
	 * @generated
	 * @ordered
	 */
	_224P00000N(9, "_224P00000N", "224P00000N"),

	/**
	 * The '<em><b>225B00000N</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_225B00000N_VALUE
	 * @generated
	 * @ordered
	 */
	_225B00000N(10, "_225B00000N", "225B00000N"),

	/**
	 * The '<em><b>225800000N</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_225800000N_VALUE
	 * @generated
	 * @ordered
	 */
	_225800000N(11, "_225800000N", "225800000N"),

	/**
	 * The '<em><b>225400000N</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_225400000N_VALUE
	 * @generated
	 * @ordered
	 */
	_225400000N(12, "_225400000N", "225400000N");

	/**
	 * The '<em><b>221700000N</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>221700000N</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_221700000N
	 * @model literal="221700000N"
	 * @generated
	 * @ordered
	 */
	public static final int _221700000N_VALUE = 0;

	/**
	 * The '<em><b>225600000N</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>225600000N</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_225600000N
	 * @model literal="225600000N"
	 * @generated
	 * @ordered
	 */
	public static final int _225600000N_VALUE = 1;

	/**
	 * The '<em><b>226300000N</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>226300000N</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_226300000N
	 * @model literal="226300000N"
	 * @generated
	 * @ordered
	 */
	public static final int _226300000N_VALUE = 2;

	/**
	 * The '<em><b>225700000N</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>225700000N</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_225700000N
	 * @model literal="225700000N"
	 * @generated
	 * @ordered
	 */
	public static final int _225700000N_VALUE = 3;

	/**
	 * The '<em><b>225A00000N</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>225A00000N</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_225A00000N
	 * @model literal="225A00000N"
	 * @generated
	 * @ordered
	 */
	public static final int _225A00000N_VALUE = 4;

	/**
	 * The '<em><b>224Z00000N</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>224Z00000N</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_224Z00000N
	 * @model literal="224Z00000N"
	 * @generated
	 * @ordered
	 */
	public static final int _224Z00000N_VALUE = 5;

	/**
	 * The '<em><b>225000000N</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>225000000N</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_225000000N
	 * @model literal="225000000N"
	 * @generated
	 * @ordered
	 */
	public static final int _225000000N_VALUE = 6;

	/**
	 * The '<em><b>222Z00000N</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>222Z00000N</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_222Z00000N
	 * @model literal="222Z00000N"
	 * @generated
	 * @ordered
	 */
	public static final int _222Z00000N_VALUE = 7;

	/**
	 * The '<em><b>225200000N</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>225200000N</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_225200000N
	 * @model literal="225200000N"
	 * @generated
	 * @ordered
	 */
	public static final int _225200000N_VALUE = 8;

	/**
	 * The '<em><b>224P00000N</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>224P00000N</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_224P00000N
	 * @model literal="224P00000N"
	 * @generated
	 * @ordered
	 */
	public static final int _224P00000N_VALUE = 9;

	/**
	 * The '<em><b>225B00000N</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>225B00000N</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_225B00000N
	 * @model literal="225B00000N"
	 * @generated
	 * @ordered
	 */
	public static final int _225B00000N_VALUE = 10;

	/**
	 * The '<em><b>225800000N</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>225800000N</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_225800000N
	 * @model literal="225800000N"
	 * @generated
	 * @ordered
	 */
	public static final int _225800000N_VALUE = 11;

	/**
	 * The '<em><b>225400000N</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>225400000N</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_225400000N
	 * @model literal="225400000N"
	 * @generated
	 * @ordered
	 */
	public static final int _225400000N_VALUE = 12;

	/**
	 * An array of all the '<em><b>Respiratory And Or Rehabilitative And Or Restorative Provider HIPAA Member5</b></em>' enumerators.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	private static final RespiratoryAndOrRehabilitativeAndOrRestorativeProviderHIPAAMember5[] VALUES_ARRAY =
		new RespiratoryAndOrRehabilitativeAndOrRestorativeProviderHIPAAMember5[] {
			_221700000N,
			_225600000N,
			_226300000N,
			_225700000N,
			_225A00000N,
			_224Z00000N,
			_225000000N,
			_222Z00000N,
			_225200000N,
			_224P00000N,
			_225B00000N,
			_225800000N,
			_225400000N,
		};

	/**
	 * A public read-only list of all the '<em><b>Respiratory And Or Rehabilitative And Or Restorative Provider HIPAA Member5</b></em>' enumerators.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public static final List<RespiratoryAndOrRehabilitativeAndOrRestorativeProviderHIPAAMember5> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));

	/**
	 * Returns the '<em><b>Respiratory And Or Rehabilitative And Or Restorative Provider HIPAA Member5</b></em>' literal with the specified literal value.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public static RespiratoryAndOrRehabilitativeAndOrRestorativeProviderHIPAAMember5 get(String literal) {
		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
			RespiratoryAndOrRehabilitativeAndOrRestorativeProviderHIPAAMember5 result = VALUES_ARRAY[i];
			if (result.toString().equals(literal)) {
				return result;
			}
		}
		return null;
	}

	/**
	 * Returns the '<em><b>Respiratory And Or Rehabilitative And Or Restorative Provider HIPAA Member5</b></em>' literal with the specified name.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public static RespiratoryAndOrRehabilitativeAndOrRestorativeProviderHIPAAMember5 getByName(String name) {
		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
			RespiratoryAndOrRehabilitativeAndOrRestorativeProviderHIPAAMember5 result = VALUES_ARRAY[i];
			if (result.getName().equals(name)) {
				return result;
			}
		}
		return null;
	}

	/**
	 * Returns the '<em><b>Respiratory And Or Rehabilitative And Or Restorative Provider HIPAA Member5</b></em>' literal with the specified integer value.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public static RespiratoryAndOrRehabilitativeAndOrRestorativeProviderHIPAAMember5 get(int value) {
		switch (value) {
			case _221700000N_VALUE: return _221700000N;
			case _225600000N_VALUE: return _225600000N;
			case _226300000N_VALUE: return _226300000N;
			case _225700000N_VALUE: return _225700000N;
			case _225A00000N_VALUE: return _225A00000N;
			case _224Z00000N_VALUE: return _224Z00000N;
			case _225000000N_VALUE: return _225000000N;
			case _222Z00000N_VALUE: return _222Z00000N;
			case _225200000N_VALUE: return _225200000N;
			case _224P00000N_VALUE: return _224P00000N;
			case _225B00000N_VALUE: return _225B00000N;
			case _225800000N_VALUE: return _225800000N;
			case _225400000N_VALUE: return _225400000N;
		}
		return null;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	private final int value;

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	private final String name;

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	private final String literal;

	/**
	 * Only this class can construct instances.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	private RespiratoryAndOrRehabilitativeAndOrRestorativeProviderHIPAAMember5(int value, String name, String literal) {
		this.value = value;
		this.name = name;
		this.literal = literal;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public int getValue() {
	  return value;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public String getName() {
	  return name;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public String getLiteral() {
	  return literal;
	}

	/**
	 * Returns the literal value of the enumerator, which is its string representation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	@Override
	public String toString() {
		return literal;
	}
	
} //RespiratoryAndOrRehabilitativeAndOrRestorativeProviderHIPAAMember5
